<script>
	import {
		baseURL
	} from '@/config'
	import Voice from '@/libs/QS-baiduyy.js'
	import placeMap from '@/libs/place-map.js'
	import {
		get_property_list_by_type,
		isResidueTimeByMinute
	} from '@/libs/unit.js'
	export default {
		data() {
			return {
				workTimes: null, //定时器，开工校验
				app_volume: '', //app内的最低音量
				// code:'',
			}
		},
		// 页面加载时触发 
		onLaunch: function(option) {
			uni.hideTabBar()
			// this.getUserT()
			if (!uni.getStorageSync('checked1')) {
				uni.setStorageSync('checked1', true) //设置app有声音
			}
			this.handleData() //数据处理,配置数据
			this.setTabr() // 根据用户状态更新不同的tabr
			// #ifdef MP-WEIXIN
			// this.getSetting()
			// #endif
			//this.get_current_location() //2分钟获取定位
			let time = uni.getStorageSync('fiveMinutesTime'); // 第一次获取时间，如果第一次获取不到就存一个当前时间进去
			let nowTime = new Date().getMinutes(); // 获取当前时间戳，进行一个5分钟的校验，如果在五分钟之内刷新不会在去执行这个方法
			// 第一次不存在的时候执行一次，其余的执行上面的判断
			if (!time) {
				this.start_task_remind_check() //开工播报
				console.log('第一次没有获取到，执行一次获取当前时间');
				let newTime = new Date().getMinutes();
				uni.setStorageSync('fiveMinutesTime', newTime);
			}
			if (nowTime % time >= 5) {
				console.log('在5分钟之后执行这个方法');
				this.start_task_remind_check() //开工播报
				let newTime = new Date().getMinutes();
				uni.setStorageSync('fiveMinutesTime', newTime);
			} else {
				console.log('在5分钟之内又执行了一次，不执行，重新再获取一次时间');
				let newTime = new Date().getMinutes();
				uni.setStorageSync('fiveMinutesTime', newTime);
			}
			uni.setStorageSync('isReboot', true)
			uni.getUserInfo({
				success(res) {
					console.log('userInfo', res)
				}
			})
			// #ifdef MP-WEIXIN
			// if (uni.getStorageSync('token')) {
			// 	this.login();
			// 	console.log('页面加载时获取');
			// }
			// #endif
			if (uni.getStorageSync('token')) {
				// this.getCont()
				this.getBox()
				this.AppOpenExecuteOnce();
			}
		},
		methods: {
			// 打开APP调用一次，不管用户怎么刷新或者其他一系列操作都不执行改方法，只用用户打开程序的那一刻开始才执行一次
			async AppOpenExecuteOnce() {
				// 如果存在就代表已经执行过了不执行
				console.log('打开软件执行一次');
				let token = uni.getStorageSync('token'),
					region = uni.getStorageSync('region');
				let res = await this.$fetch(this.$api.get_app_first, {
					token,
					region
				}, 'GET')
				if (res.code) return
				console.log('res获取的是什么数据：', res);
				uni.setStorageSync('zhouchong', res.data.queryZhouChongFlag); // 周冲
				uni.setStorageSync('NewPeopleRedBag', res.data.queryNewEmployeeWhetherFloating); // 新人红包
				uni.setStorageSync('queryNewEmployeeWhether', res.data.queryNewEmployeeWhether); // 弹框 新雇员活动展示
				uni.setStorageSync('queryNewEmployeeAmount', res.data.queryNewEmployeeAmount); // 金额  新雇员活动展示
				uni.setStorageSync('popupsList', res.data.popupsList); // 弹框
			},
			// 记录弹框次数
			// getCont() {
			// 	this.$fetch(this.$api.count_bullet_box, {}, 'POST').then(e => {})
			// },
			getBox() {
				// this.$fetch(this.$api.query_bullet_box, {
				// 	region: uni.getStorageSync('region') || 330372
				// }, 'POST').then(res => {
				// 	uni.setStorageSync('showMask', res.data)
				// })
				let that = this;
				uni.$on('popups', function(data) {
					console.log('返回的是:', data);
					uni.setStorageSync('showMask', data)
				})
			},
			// /* 登录微信小程序*/
			// getUserT() {
			// 	uni.login({
			// 		provider: 'weixin',
			// 		success: res => {
			// 			let code = res.code
			// 			uni.getUserInfo({
			// 				provider: 'weixin',
			// 				success: infoRes => {
			// 					this.getAppWxCode(code)
			// 				}
			// 			});
			// 		},
			// 		fail: (err) => {
			// 			uni.showToast({
			// 				title: '授权失败',
			// 				icon: 'none'
			// 			})
			// 		},
			// 		complete() {}
			// 	})
			// },
			// async getAppWxCode(code) {
			// 	let res = await this.$fetch(this.$api.wx_login_xcx, {
			// 		code: code
			// 	}, 'POST')
			// 	if (res.code) return uni.showToast({
			// 		title: res.msg,
			// 		icon: 'none'
			// 	})
			// 	uni.setStorageSync('appOpenid', res.data.openid)
			// },
			// #ifdef MP-WEIXIN
			/* 处理微信授权 */
			handleWeChatAuthorize() {
				uni.login({
					provider: 'weixin',
					success: res => {
						let code = res.code
						uni.getUserInfo({
							provider: 'weixin',
							success: infoRes => {
								this.getWxCode(code)
							}
						});
					}
				})
			},
			// async getWxCode(code) {
			// 	let res = await this.$fetch(this.$api.wx_login_xcx, {
			// 		code: code
			// 	}, 'POST')
			// 	if (res.code) return uni.showToast({
			// 		title: res.msg,
			// 		icon: 'none'
			// 	})
			// 	this.mpWxLogin(res.data)
			// 	console.log(res.data, '我瞅瞅是啥玩意1111111');
			// },
			async mpWxLogin(loginRes) {
				let res = await this.$fetch(this.$api.login_by_id, {
					id: loginRes.unionid,
					loginType: 3,
					cid: 0
				}, 'POST')
				console.log('微信登录', res, loginRes.unionid)
				uni.hideLoading()
				// return
				// 已注册，直接登录
				if (res.code == 0) {
					// 存储token
					uni.setStorageSync('token', res.data.token)
					uni.showToast({
						title: '登录成功~',
						icon: 'none'
					})
					this.getUserInfo()
				} else if (res.msg = '登录失败 请绑定手机号') {
					console.log('登录失败')
				} else {
					return
				}
			},
			async getUserInfo() {
				let res = await this.$fetch(this.$api.get_current_user, {}, 'GET')
				console.log('获取当前用户信息', res)
				if (res.code) return uni.showToast({
					title: res.msg,
					icon: 'none'
				})
				// 注册用户
				if (res.data.userType == '-1') {
					console.log('未注册')
					setTimeout(() => {
						uni.reLaunch({
							url: '/pages/select-identity/select-identity'
						})
					}, 600)
					// 登录用户
				} else {
					console.log('已经注册')
					uni.setStorageSync("level", res.data.user.level) //用户等级
					setTimeout(() => {
						uni.switchTab({
							url: '/pages/index/index'
						})
					}, 600)
				}
			},
			// #endif
			// // 判断用户是否授权
			// getSetting() {
			// 	uni.getSetting({
			// 		success: (res) => {
			// 			if (res.authSetting['scope.userLocation'] != undefined && res.authSetting[
			// 					'scope.userLocation'] != true) { //非初始化进入该页面,且未授权
			// 				uni.showModal({
			// 					title: '是否授权当前位置',
			// 					content: '将获取您的具体位置，用于根据距离展示距离您更近的任务',
			// 					success: res => {
			// 						if (res.cancel) {
			// 							uni.showToast({
			// 								title: '授权失败',
			// 								icon: 'none',
			// 								duration: 1000
			// 							})
			// 						} else if (res.confirm) {
			// 							this.openSet()
			// 						}
			// 					}
			// 				})
			// 			} else {
			// 				// #ifdef MP-WEIXIN
			// 				this.get_current_location()
			// 				// #endif
			// 			}
			// 		}
			// 	})
			// },
			// /* 打开设置 */
			// openSet() {
			// 	uni.openSetting({
			// 		success: dataAu => {
			// 			if (dataAu.authSetting["scope.userLocation"] == true) {
			// 				uni.showToast({
			// 					title: '授权成功',
			// 					icon: 'success',
			// 					duration: 1000
			// 				})
			// 				// #ifdef MP-WEIXIN
			// 				this.get_current_location()
			// 				// #endif
			// 			} else {
			// 				uni.showToast({
			// 					title: '授权失败',
			// 					icon: 'none',
			// 					duration: 1000
			// 				})
			// 			}
			// 		}
			// 	})
			// },
			// // 获取用户当前的经纬度
			// get_current_location() {
			// 	uni.getLocation({
			// 		// #ifdef MP-WEIXIN
			// 		type: 'gcj02',
			// 		// #endif
			// 		success: (res) => {
			// 			// console.log('获取经纬度~~')
			// 			uni.setStorageSync('location', [res.latitude, res.longitude])
			// 			this.getAdcode(res.latitude, res.longitude)
			// 		}
			// 	})
			// 	setInterval(() => {
			// 		uni.getLocation({
			// 			// #ifdef MP-WEIXIN
			// 			type: 'gcj02',
			// 			// #endif
			// 			success: (res) => {
			// 				// console.log('获取经纬度~~')
			// 				uni.setStorageSync('location', [res.latitude, res.longitude])
			// 				this.getAdcode(res.latitude, res.longitude)
			// 			}
			// 		})
			// 	}, 120000)
			// },
			// 由经纬度查询街道的行政代码
			// getAdcode(lat, lng) {
			// 	uni.request({
			// 		url: 'https://restapi.amap.com/v3/geocode/regeo?parameters',
			// 		data: {
			// 			key: 'd73cc951a96637a251a9a2446b48ce9c',
			// 			location: lng + ',' + lat
			// 		},
			// 		success: res => {
			// 			uni.setStorageSync('currentAddress', res.data.regeocode.formatted_address)
			// 			let region = res.data.regeocode.addressComponent.towncode.slice(0, 9)
			// 			uni.setStorageSync('region', region)
			// 			if (uni.getStorageSync('token')) {
			// 				this.upd_user(lat, lng, region) ////更新用户位置
			// 			}
			// 		}
			// 	})
			// },
			// 开工提示校验，接单确认提醒
			async start_task_remind_check() {
				let that = this
				if (uni.getStorageSync('token') && uni.getStorageSync('userType') == 0) {
					//开工提示校验
					console.log('开工提示校验，接单确认提醒')
					let res = await that.$fetch(that.$api.start_task_remind_check, {}, 'POST')
					if (res.data == 1 && uni.getStorageSync('checked1')) {
						Voice('您已到开工地点，请尽快与雇主当面点击开工按钮')
					}
					// 接单确认提醒
					console.log('接单确认提醒~~~~~~~~~~', uni.getStorageSync('hasUnconfirm'), uni.getStorageSync('checked1'))
					if (uni.getStorageSync('hasUnconfirm') == 1 && uni.getStorageSync('checked1')) {
						if (uni.getStorageSync('OldStaff')) {
							Voice('这是老雇主的任务，可以直接接单哦。')
						} else {
							Voice('请尽快拨打电话与雇主确认订单')
						}
					} else if (uni.getStorageSync('hasUnconfirm') == 2 && uni.getStorageSync('checked1')) {
						Voice('请确认接单或取消订单')
					}
				}
				//等60s之后再开始循环
				this.workTimes = setInterval((async () => {
					if (uni.getStorageSync('token')) {
						//开工提示校验
						if (uni.getStorageSync('checked1')) {
							console.log('开工提示校验，接单确认提醒')
							let res = await that.$fetch(that.$api.start_task_remind_check, {}, 'POST')
							if (res.data == 1) {
								Voice('您已到开工地点，请尽快与雇主当面点击开工按钮')
							}
							// 接单确认提醒
							console.log('接单确认提醒~~~~~~~~~~', uni.getStorageSync('hasUnconfirm'))
							if (uni.getStorageSync('hasUnconfirm') == 1) {
								if (uni.getStorageSync('OldStaff')) {
									Voice('这是老雇主的任务，可以直接接单哦。')
									Voice('这是老雇主的任务，可以直接接单哦。')
								} else {
									Voice('请尽快拨打电话与雇主确认订单')
									Voice('请尽快拨打电话与雇主确认订单')
								}
							} else if (uni.getStorageSync('hasUnconfirm') == 2) {
								Voice('请确认接单或取消订单')
								Voice('请确认接单或取消订单')
							}
							if (uni.getStorageSync('receivedTaskStartTime')) {
								let Minute = isResidueTimeByMinute(uni.getStorageSync(
									'receivedTaskStartTime'))
								if (Minute <= 15) {
									Voice('您的工作马上要开始了，请不要迟到')
									Voice('您的工作马上要开始了，请不要迟到')
									if (Minute <= 2) {
										uni.setStorageSync('receivedTaskStartTime', '')
									}
								}
							}
						}
					}
				}), 180000)
			},
			// //更新用户位置
			// async upd_user(lat, lng, region) {
			// 	//经纬度保留6位小数
			// 	lat = lat.toFixed(6)
			// 	lng = lng.toFixed(6)
			// 	region = region.slice(0, 9)
			// 	console.log('更新用户位置', lat, lng, region)
			// 	let res = await this.$fetch(this.$api.upd_user, {
			// 		lat: lat,
			// 		lng: lng,
			// 		region: region
			// 	}, 'POST')
			// 	console.log('更新用户位置res', res)
			// },
			// 获取当前时间和缓存时间(一天一次)
			get_nowTime(futrue) {
				// 执行这个存储的话就代表今日已展示过，今日不管什么时间段进入都不会执行以下代码
				let nowTime = new Date();
				let futrueTime;
				if (futrue) {
					futrueTime = new Date(futrue); // 缓存时间
				} else {
					// 没有的话就获取今天的时间
					futrueTime = new Date();
					// 缓存时间
					uni.setStorageSync('showNewTime', futrueTime.getTime());
				}
				// 当天日期 和 缓存前一天的日期做对比
				if (futrueTime && new Date(futrueTime).getDate() === nowTime.getDate()) {
					return false;
				} else {
					// 如果今日没有执行的话就给存储起来，今日就不会再执行了
					uni.setStorageSync('showNewTime', nowTime)
					return true;
				}
			},
			// 判断当天是否被执行
			timeFn() {
				// 直接取缓存 取得的时候是undefined
				let time = uni.getStorageSync('showNewTime'); // 存储的前一天(也可能是今天)
				let flag = this.get_nowTime(time);
				// 为true就代表今日没有被执行过，需要重新将存储的值赋值一遍
				if (flag) {
					// console.log('执行');
					this.systemInfo();
				} else {
					console.log('今日已执行过，不在执行');
				}
			},
			// 赋值用的
			async systemInfo() {
				let expect_type = uni.getStorageSync('expect_type'),
					workTime = uni.getStorageSync("workTime"),
					street = uni.getStorageSync('street'),
					work_type = uni.getStorageSync("work_type"),
					opinionType = uni.getStorageSync('opinionType'),
					hotList = uni.getStorageSync('hotList');
				let Openarea = uni.getStorageSync('Openarea'),
					UUId = uni.getStorageSync('UUID'),
					platform_prompt = uni.getStorageSync('platform_prompt'),
					imgPath = uni.getStorageSync('imgPath'),
					x_hours_no_order = uni.getStorageSync('x_hours_no_order'),
					order_user_cancel_cut_integrity = uni.getStorageSync('order_user_cancel_cut_integrity'),
					task_user_cancel_cut_integrity = uni.getStorageSync('task_user_cancel_cut_integrity'),
					real_auth_integrity = uni.getStorageSync('real_auth_integrity'),
					serviceTelephone = uni.getStorageSync('serviceTelephone'),
					user_amount_ratio = uni.getStorageSync('user_amount_ratio'),
					x_minute_auto_confirm = uni.getStorageSync('x_minute_auto_confirm'),
					overtime_cancel = uni.getStorageSync('overtime_cancel'),
					app_volume = uni.getStorageSync('app_volume');
				let res4 = await get_property_list_by_type()
				console.log('res44444444', res4);
				//期望类型
				uni.setStorageSync('expect_type', res4.dlg_expect_type)
				// 期望工作时间
				uni.setStorageSync('workTime', res4.dlg_expect_workTime)
				// 街道 
				uni.setStorageSync('street', res4.dlg_street)
				// 期望工作类型
				uni.setStorageSync('work_type', res4.dlg_expect_work_type)
				// 意见反馈类型
				uni.setStorageSync('opinionType', res4.dlg_opinion_type)
				// 热门搜索
				uni.setStorageSync('hotList', res4.dlg_hot_search)
				// 
				//获取开放区域
				uni.setStorageSync('Openarea', res4.adcode)
				uni.setStorageSync('UUID', res4.applet_id)
				// 平台提示
				uni.setStorageSync('platform_prompt', res4.platform_prompt)
				// 获取图片路径
				uni.setStorageSync('imgPath', res4.pic_url)
				// 发布任务时 缴纳保证金配置(元/人)
				uni.setStorageSync('bond', res4.bond)
				// 雇员取消x小时内不可接单
				uni.setStorageSync('x_hours_no_order', res4.x_hours_no_order)
				// 雇员取消订单扣除诚信值
				uni.setStorageSync('order_user_cancel_cut_integrity', res4.order_user_cancel_cut_integrity)
				// 雇主取消任务扣除诚信值
				uni.setStorageSync('task_user_cancel_cut_integrity', res4.task_user_cancel_cut_integrity)
				// 实名认证诚信值配置
				uni.setStorageSync('real_auth_integrity', res4.real_auth_integrity)
				// 客服电话
				uni.setStorageSync('serviceTelephone', res4.telephone)
				//收取雇员百分之4手续费
				uni.setStorageSync('user_amount_ratio', res4.user_amount_ratio)
				// x分钟自动确认开工配置
				uni.setStorageSync('x_minute_auto_confirm', res4.x_minute_auto_confirm)
				//接单超时取消 单位 分钟 整数
				uni.setStorageSync('overtime_cancel', res4.overtime_cancel)
				// 手机音量
				uni.setStorageSync('app_volume', res4.app_volume)
				this.app_volume = res4.app_volume
			},
			// 配置数据
			async handleData() {
				// 判断消息是否有红点
				if (this.$store.state.isChatMsg || this.$store.state.isNewPlatMsg || this.$store.state.isTabBar) {
					// 展示红点
					uni.showTabBarRedDot({
						index: 2,
						success: (res) => {
							console.log('app一进来有红点')
						},
						fail: (err) => {
							// console.log('err', err)
						}
					})
				} else {
					uni.removeTabBarBadge({
						index: 2,
						success: (res) => {
							// console.log('成功')
						},
						fail: (err) => {
							// console.log('err', err)
						},
					})
				}
				// 雇员端筛选工作
				let screenObj = uni.getStorageSync('screenObj') ? uni.getStorageSync('screenObj') : {}
				let places = placeMap()
				screenObj.isAsc = 'desc'
				screenObj.taskType = ''
				screenObj.orderByColumn = ''
				screenObj.sex = ''
				screenObj.startReward = ''
				screenObj.endReward = ''
				screenObj.pageNum = 0
				screenObj.pageSize = 40
				screenObj.status = 3
				screenObj.region = uni.getStorageSync('region').slice(0, 6)
				if (!screenObj.region) {
					this.$store.commit('selectCityChange', places['330783'])
				} else {
					this.$store.commit('selectCityChange', places[screenObj.region])
				}
				uni.setStorageSync('screenObj', screenObj)
				uni.setStorageSync('word', '') //将雇主端搜索关键字清空 
				// 直接取缓存 取得的时候是undefined
				let expect_type = uni.getStorageSync('expect_type'),
					workTime = uni.getStorageSync("workTime"),
					street = uni.getStorageSync('street'),
					work_type = uni.getStorageSync("work_type"),
					opinionType = uni.getStorageSync('opinionType'),
					hotList = uni.getStorageSync('hotList');
				let Openarea = uni.getStorageSync('Openarea'),
					UUId = uni.getStorageSync('UUID'),
					platform_prompt = uni.getStorageSync('platform_prompt'),
					imgPath = uni.getStorageSync('imgPath'),
					x_hours_no_order = uni.getStorageSync('x_hours_no_order'),
					order_user_cancel_cut_integrity = uni.getStorageSync('order_user_cancel_cut_integrity'),
					task_user_cancel_cut_integrity = uni.getStorageSync('task_user_cancel_cut_integrity'),
					real_auth_integrity = uni.getStorageSync('real_auth_integrity'),
					serviceTelephone = uni.getStorageSync('serviceTelephone'),
					user_amount_ratio = uni.getStorageSync('user_amount_ratio'),
					x_minute_auto_confirm = uni.getStorageSync('x_minute_auto_confirm'),
					overtime_cancel = uni.getStorageSync('overtime_cancel'),
					app_volume = uni.getStorageSync('app_volume');
				// 判断这些存储的字段是否已被缓存，已被缓存就不需要执行了
				if ((expect_type == '' && workTime == '' && street == '' && work_type == '' && opinionType == '' &&
						hotList == '' && Openarea == '' && UUId == '' && platform_prompt == '' && imgPath == '' &&
						x_hours_no_order == '' && order_user_cancel_cut_integrity == '' &&
						task_user_cancel_cut_integrity == '' && real_auth_integrity == '' && serviceTelephone == '' &&
						user_amount_ratio == '' && x_minute_auto_confirm == '' && overtime_cancel == '' &&
						app_volume == '')) {
					// 第一次进入软件是没有这些值的，所以会直接存储起来(其他地方有做一天一次的操作，这一步判断就不需要再做操作了)
					this.systemInfo()
				} else {
					this.app_volume = app_volume
					// console.log('今日已经执行过了，不必要在执行App.vue')
					// 存储的值已经存在了，就会执行这一步，这一步是用来用户下一次进入，判断天今日是否已经请求过了
					this.timeFn();
				}
				// 获取七牛上传TOKEN (本地没有七牛云token才会被执行)
				// if (!uni.getStorageSync('uploadToken')) {
				// 	let res5 = await this.$fetch(this.$api.get_qiniu_token, {}, 'POST')
				// 	// 如果msg返回的是未登录就没有必要去存储，浪费空间
				// 	console.log('没有七牛云token呢，执行了判断', res5.msg);
				// 	if (res5.msg !== '未登录') {
				// 		uni.setStorageSync('uploadToken', res5.msg)
				// 	}
				// }
				if (new Date().toISOString().slice(0, 10) != uni.getStorageSync('date')) {
					try {
						uni.removeStorageSync('heEvaluateLv');
					} catch (e) {
						// error
					}
				}
				// if (!uni.getStorageSync('isHavePayPassword')) {
				// 	let isHavePayPassword = await this.$fetch(this.$api.v1_Buy_monthly_card, {
				// 		cardId: 0,
				// 		payType: 2,
				// 		payPwd: '1'
				// 	}, 'POST')
				// 	if (isHavePayPassword.msg == "获取不到当前用户支付密码,请先设置") {
				// 		uni.setStorageSync("isHavePayPassword", false)
				// 	} else {
				// 		uni.setStorageSync("isHavePayPassword", true)
				// 	}
				// }
			},
			// 切换底部导航栏
			setTabr() {
				if (!uni.getStorageSync('token')) {
					uni.setStorageSync('userType', 0)
				}
				if (uni.getStorageSync('userType') == 1) {
					uni.hideTabBar()
				} else {
					setTimeout(() => {
						uni.setTabBarItem({
							index: 0,
							text: '零工',
							"iconPath": "static/tab-bar/1.png",
							"selectedIconPath": "static/tab-bar/2.png",
						})
						uni.setTabBarItem({
							index: 1,
							text: '接单',
							"iconPath": "static/tab-bar/3.png",
							"selectedIconPath": "static/tab-bar/4.png",
						})
					}, 2000)
				}
			},
			dateFormat(fmt, date) {
				let ret;
				const opt = {
					"Y+": date.getFullYear().toString(), // 年
					"m+": (date.getMonth() + 1).toString(), // 月
					"d+": date.getDate().toString(), // 日
					"H+": date.getHours().toString(), // 时
					"M+": date.getMinutes().toString(), // 分
					"S+": date.getSeconds().toString() // 秒
					// 有其他格式化字符需求可以继续添加，必须转化成字符串
				};
				for (let k in opt) {
					ret = new RegExp("(" + k + ")").exec(fmt);
					if (ret) {
						fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
					};
				};
				return fmt;
			},
			async errorSubmit(userid, errmsg, phoneInfo, page) {
				let date = new Date()
				date = this.dateFormat("YYYY-mm-dd HH:MM:SS", date)
				let error = {
					userid: userid,
					url: page,
					phoneuser: phoneInfo,
					errmsg: errmsg,
					create_time: date,
					update_time: date
				}
				console.log(date)
				let res = await this.$fetch(this.$api.app_logerrmsg, error, 'POST', 'JSON')
				if (res.code) return uni.showToast({
					title: res.msg,
					icon: 'none'
				})
				console.log('err' + res)
			},
			async login() {
				uni.login({
					provider: 'weixin',
					success: res => {
						this.code = res.code
						console.log('code111', this.code)
						if (!uni.getStorageSync('token')) {
							this.getWxCode(res.code)
						}
					}
				})
			},
			async getWxCode(code) {
				let res = await this.$fetch(this.$api.wx_login_xcx, {
					code: code
				}, 'POST')
				if (res.code) return uni.showToast({
					title: res.msg,
					icon: 'none'
				})
				this.code = code
				// console.log(res.data, 'res.data我看看是什么数据');
				// this.mpWxLogin(res.data)
				let resData = await this.$fetch(this.$api.updateUserOpenId, {
					token: uni.getStorageSync('token'),
					openId: uni.getStorageSync('openid')
				}, 'POST')
				console.log('更新成功或者失败11', resData)
			},
		},
		onShow: function(option) {
			if (option.query) {
				uni.setStorageSync('y-invitetaskId', option.query.taskId)
				uni.setStorageSync('y-invitecode', option.query.code)
				if (option.query.code) {
					uni.removeStorageSync('y-invitetaskId')
				}
				uni.setStorageSync('inviteCode', option.query.taskId)
				uni.setStorageSync('inviteUserId', option.query.fenxid)
				console.log('接收app参数D', option)
			}
			// #ifdef MP-WEIXIN
			if (uni.getStorageSync('token')) {
				this.login();
			}
			// #endif
		},
		onHide: function() {
			uni.setStorageSync('isReboot', false)
		},
		onError: function(e) {
			//this.errorSubmit('系统错误返回'+e)
			let errorINfoList = []
			if (uni.getStorageSync('errorInfo')) {
				errorINfoList = uni.getStorageSync('errorInfo')
			}
			console.log('系统错误信息:')
			console.log(e.toString())
			console.log('用户id' + uni.getStorageSync('userId'))
			var pages = getCurrentPages()
			let p = ''
			let errorINfo = e.toString()
			if (pages.length != 0) {
				p = '当前页面:' + pages[pages.length - 1].route + ':完整路由--'
				pages.forEach(v => {
					p += v.route + '----分割线-----'
				})
				console.log(p)
			} else {
				p = '未获取到'
			}
			errorINfo = errorINfo + '--' + p
		},
	}
</script>
<style lang="scss">
	@import "uview-ui/index.scss";

	/* #ifdef H5 */
	checkbox .uni-checkbox-input {
		border-radius: 50%;
		/* border: 1px solid #FFCC33; */
	}

	checkbox .uni-checkbox-input.uni-checkbox-input-checked {
		border-radius: 50%;
		/* border: 1px solid #FFCC33; */
	}

	checkbox .uni-checkbox-input.uni-checkbox-input-checked::before {
		border-radius: 50%;
		/* border: 1px solid #FFCC33; */
	}

	/* #endif */
	/* #ifndef APP-PLUS-NVUE */
	page {
		background-color: #F2F2F2;
		color: #402110;
		font-size: 14px;
		font-family: PingFangSC-Regular;
	}

	.hg-30 {
		height: 30rpx;
		background: #F2F2F2;
	}

	.hg-98 {
		height: 98rpx;
		background: #F2F2F2;
	}

	.hg-108 {
		height: 108rpx;
		background: #F2F2F2;
	}

	.hg-128 {
		height: 128rpx;
		background: #F2F2F2;
	}

	.status-bar {
		height: calc(var(--status-bar-height) + 20rpx);
		background-color: #FFFFFF;
	}

	input {
		font-size: 14px;
	}

	.right-arrow {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.right-arrow::after {
		content: "";
		width: 15upx;
		height: 15upx;
		border-top: 4upx solid #ccc;
		border-right: 4upx solid #ccc;
		transform: rotate(45deg);
	}

	/* #endif */
</style>